<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>OCILIB (C and C++ Driver for Oracle): ocilib::Message Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">OCILIB (C and C++ Driver for Oracle)
   &#160;<span id="projectnumber">4.2.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>About</span></a></li>
      <li><a href="modules.html"><span>Documentation</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classocilib_1_1_message.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="classocilib_1_1_message-members.html">List of all members</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">ocilib::Message Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>AQ message.  
 <a href="classocilib_1_1_message.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="ocilib_8hpp_source.html">ocilib.hpp</a>&gt;</code></p>

<p>Inherits <a class="el" href="classocilib_1_1_handle_holder.html">ocilib::HandleHolder&lt; OCI_Msg * &gt;</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a2aa8565d58cf9c813deabaa0cadff6bc"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bc">MessageStateValues</a> { <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca130668e3c47301fb558ee897c9fd3eeb">Ready</a> = OCI_AMS_READY, 
<a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca8e64b0a1a5f0e78fbd38b5e09b62ba2e">Waiting</a> = OCI_AMS_WAITING, 
<a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca0d41191cc47f046e3fa59c64d429125d">Processed</a> = OCI_AMS_PROCESSED, 
<a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca98a8354edf26cc0df160dddfc7505ba4">Expired</a> = OCI_AMS_EXPIRED
 }</td></tr>
<tr class="memdesc:a2aa8565d58cf9c813deabaa0cadff6bc"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> state enumerated values.  <a href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bc">More...</a><br /></td></tr>
<tr class="separator:a2aa8565d58cf9c813deabaa0cadff6bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafe1cd604287c11e710e966e92ccaf66"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classocilib_1_1_enum.html">Enum</a>&lt; <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bc">MessageStateValues</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#aafe1cd604287c11e710e966e92ccaf66">MessageState</a></td></tr>
<tr class="memdesc:aafe1cd604287c11e710e966e92ccaf66"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> state.  <a href="#aafe1cd604287c11e710e966e92ccaf66">More...</a><br /></td></tr>
<tr class="separator:aafe1cd604287c11e710e966e92ccaf66"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a7f050451b47f028fdbaa258a5f95f3bd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a7f050451b47f028fdbaa258a5f95f3bd">Message</a> (const <a class="el" href="classocilib_1_1_type_info.html">TypeInfo</a> &amp;typeInfo)</td></tr>
<tr class="memdesc:a7f050451b47f028fdbaa258a5f95f3bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a message object based on the given payload type.  <a href="#a7f050451b47f028fdbaa258a5f95f3bd">More...</a><br /></td></tr>
<tr class="separator:a7f050451b47f028fdbaa258a5f95f3bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aacc25763e5a1cd639378cec1a56b62cf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#aacc25763e5a1cd639378cec1a56b62cf">Reset</a> ()</td></tr>
<tr class="memdesc:aacc25763e5a1cd639378cec1a56b62cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset all attributes of the message.  <a href="#aacc25763e5a1cd639378cec1a56b62cf">More...</a><br /></td></tr>
<tr class="separator:aacc25763e5a1cd639378cec1a56b62cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28370792d6c253c1e1a305be50f7d511"><td class="memTemplParams" colspan="2"><a class="anchor" id="a28370792d6c253c1e1a305be50f7d511"></a>
template&lt;class TPayloadType &gt; </td></tr>
<tr class="memitem:a28370792d6c253c1e1a305be50f7d511"><td class="memTemplItemLeft" align="right" valign="top">TPayloadType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a28370792d6c253c1e1a305be50f7d511">GetPayload</a> ()</td></tr>
<tr class="memdesc:a28370792d6c253c1e1a305be50f7d511"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the object payload of the message. <br /></td></tr>
<tr class="separator:a28370792d6c253c1e1a305be50f7d511"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9c6e23faa0b786f74c4a19619cdeed7"><td class="memTemplParams" colspan="2">template&lt;class TPayloadType &gt; </td></tr>
<tr class="memitem:af9c6e23faa0b786f74c4a19619cdeed7"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#af9c6e23faa0b786f74c4a19619cdeed7">SetPayload</a> (const TPayloadType &amp;value)</td></tr>
<tr class="memdesc:af9c6e23faa0b786f74c4a19619cdeed7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the object payload of the message.  <a href="#af9c6e23faa0b786f74c4a19619cdeed7">More...</a><br /></td></tr>
<tr class="separator:af9c6e23faa0b786f74c4a19619cdeed7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a898b33f62583d87bc5335feb786fe518"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classocilib_1_1_date.html">Date</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a898b33f62583d87bc5335feb786fe518">GetEnqueueTime</a> () const </td></tr>
<tr class="memdesc:a898b33f62583d87bc5335feb786fe518"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the time the message was enqueued  <a href="#a898b33f62583d87bc5335feb786fe518">More...</a><br /></td></tr>
<tr class="separator:a898b33f62583d87bc5335feb786fe518"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a545dfc01c5af93705eb77cad44acaca8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a545dfc01c5af93705eb77cad44acaca8"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a545dfc01c5af93705eb77cad44acaca8">GetAttemptCount</a> () const </td></tr>
<tr class="memdesc:a545dfc01c5af93705eb77cad44acaca8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of attempts that have been made to dequeue the message. <br /></td></tr>
<tr class="separator:a545dfc01c5af93705eb77cad44acaca8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea958abc119c0b4d7a6f50a571373008"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea958abc119c0b4d7a6f50a571373008"></a>
<a class="el" href="classocilib_1_1_message.html#aafe1cd604287c11e710e966e92ccaf66">MessageState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#aea958abc119c0b4d7a6f50a571373008">GetState</a> () const </td></tr>
<tr class="memdesc:aea958abc119c0b4d7a6f50a571373008"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the state of the message at the time of the dequeue. <br /></td></tr>
<tr class="separator:aea958abc119c0b4d7a6f50a571373008"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a768129bdb46c67893c6772f2211b897a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceocilib.html#a7a8f606db0b3fbbf7d814240c5f96178">Raw</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a768129bdb46c67893c6772f2211b897a">GetID</a> () const </td></tr>
<tr class="memdesc:a768129bdb46c67893c6772f2211b897a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the ID of the message.  <a href="#a768129bdb46c67893c6772f2211b897a">More...</a><br /></td></tr>
<tr class="separator:a768129bdb46c67893c6772f2211b897a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89e7eddb201a941cfccab99adfd09fc1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a89e7eddb201a941cfccab99adfd09fc1">GetExpiration</a> () const </td></tr>
<tr class="memdesc:a89e7eddb201a941cfccab99adfd09fc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the duration that the message is available for dequeuing.  <a href="#a89e7eddb201a941cfccab99adfd09fc1">More...</a><br /></td></tr>
<tr class="separator:a89e7eddb201a941cfccab99adfd09fc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7395ccb71a1ab5149c3b2db3ecbd70b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a7395ccb71a1ab5149c3b2db3ecbd70b3">SetExpiration</a> (int value)</td></tr>
<tr class="memdesc:a7395ccb71a1ab5149c3b2db3ecbd70b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the duration that the message is available for dequeuing  <a href="#a7395ccb71a1ab5149c3b2db3ecbd70b3">More...</a><br /></td></tr>
<tr class="separator:a7395ccb71a1ab5149c3b2db3ecbd70b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4626b989ab85b0a533e0d5e35424c19c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a4626b989ab85b0a533e0d5e35424c19c">GetEnqueueDelay</a> () const </td></tr>
<tr class="memdesc:a4626b989ab85b0a533e0d5e35424c19c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of seconds that a message is delayed for dequeuing.  <a href="#a4626b989ab85b0a533e0d5e35424c19c">More...</a><br /></td></tr>
<tr class="separator:a4626b989ab85b0a533e0d5e35424c19c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf09869e15cfaeb3d78b5988625a0d6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#aaf09869e15cfaeb3d78b5988625a0d6c">SetEnqueueDelay</a> (int value)</td></tr>
<tr class="memdesc:aaf09869e15cfaeb3d78b5988625a0d6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the number of seconds to delay the enqueued message  <a href="#aaf09869e15cfaeb3d78b5988625a0d6c">More...</a><br /></td></tr>
<tr class="separator:aaf09869e15cfaeb3d78b5988625a0d6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1f95b7149935fde1a0b61f6c2cf8789"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#ad1f95b7149935fde1a0b61f6c2cf8789">GetPriority</a> () const </td></tr>
<tr class="memdesc:ad1f95b7149935fde1a0b61f6c2cf8789"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the priority of the message.  <a href="#ad1f95b7149935fde1a0b61f6c2cf8789">More...</a><br /></td></tr>
<tr class="separator:ad1f95b7149935fde1a0b61f6c2cf8789"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5eec3ebba0c7dda6bed67df88319a7ed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a5eec3ebba0c7dda6bed67df88319a7ed">SetPriority</a> (int value)</td></tr>
<tr class="memdesc:a5eec3ebba0c7dda6bed67df88319a7ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the priority of the message.  <a href="#a5eec3ebba0c7dda6bed67df88319a7ed">More...</a><br /></td></tr>
<tr class="separator:a5eec3ebba0c7dda6bed67df88319a7ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8944e40f79daa0ce764fcc21f085d0cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceocilib.html#a7a8f606db0b3fbbf7d814240c5f96178">Raw</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a8944e40f79daa0ce764fcc21f085d0cb">GetOriginalID</a> () const </td></tr>
<tr class="memdesc:a8944e40f79daa0ce764fcc21f085d0cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the original ID of the message in the last queue that generated this message.  <a href="#a8944e40f79daa0ce764fcc21f085d0cb">More...</a><br /></td></tr>
<tr class="separator:a8944e40f79daa0ce764fcc21f085d0cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea7d86e961ef365841aa04195f598c01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#aea7d86e961ef365841aa04195f598c01">SetOriginalID</a> (const <a class="el" href="namespaceocilib.html#a7a8f606db0b3fbbf7d814240c5f96178">Raw</a> &amp;value)</td></tr>
<tr class="memdesc:aea7d86e961ef365841aa04195f598c01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the original ID of the message in the last queue that generated this message.  <a href="#aea7d86e961ef365841aa04195f598c01">More...</a><br /></td></tr>
<tr class="separator:aea7d86e961ef365841aa04195f598c01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a186e790b939cf124f67af718a3e74f96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a186e790b939cf124f67af718a3e74f96">GetCorrelation</a> () const </td></tr>
<tr class="memdesc:a186e790b939cf124f67af718a3e74f96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the correlation identifier of the message.  <a href="#a186e790b939cf124f67af718a3e74f96">More...</a><br /></td></tr>
<tr class="separator:a186e790b939cf124f67af718a3e74f96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db8c69adaaa26d48b5cfb9c970e63af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a2db8c69adaaa26d48b5cfb9c970e63af">SetCorrelation</a> (const <a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a> &amp;value)</td></tr>
<tr class="memdesc:a2db8c69adaaa26d48b5cfb9c970e63af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the correlation identifier of the message.  <a href="#a2db8c69adaaa26d48b5cfb9c970e63af">More...</a><br /></td></tr>
<tr class="separator:a2db8c69adaaa26d48b5cfb9c970e63af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a589fa793f09788a83a8a741445fbfb03"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a589fa793f09788a83a8a741445fbfb03">GetExceptionQueue</a> () const </td></tr>
<tr class="memdesc:a589fa793f09788a83a8a741445fbfb03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <a class="el" href="classocilib_1_1_exception.html" title="Exception class handling all OCILIB errors. ">Exception</a> queue name of the message.  <a href="#a589fa793f09788a83a8a741445fbfb03">More...</a><br /></td></tr>
<tr class="separator:a589fa793f09788a83a8a741445fbfb03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3604dfb0ffe1da8e56c453a8784e7a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#af3604dfb0ffe1da8e56c453a8784e7a4">SetExceptionQueue</a> (const <a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a> &amp;value)</td></tr>
<tr class="memdesc:af3604dfb0ffe1da8e56c453a8784e7a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the name of the queue to which the message is moved to if it cannot be processed successfully.  <a href="#af3604dfb0ffe1da8e56c453a8784e7a4">More...</a><br /></td></tr>
<tr class="separator:af3604dfb0ffe1da8e56c453a8784e7a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa88c47fa57264436e8056c92c439074"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classocilib_1_1_agent.html">Agent</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#aaa88c47fa57264436e8056c92c439074">GetSender</a> () const </td></tr>
<tr class="memdesc:aaa88c47fa57264436e8056c92c439074"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the original sender of the message.  <a href="#aaa88c47fa57264436e8056c92c439074">More...</a><br /></td></tr>
<tr class="separator:aaa88c47fa57264436e8056c92c439074"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f32d21624feea4591932481611ba09b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#a2f32d21624feea4591932481611ba09b">SetSender</a> (const <a class="el" href="classocilib_1_1_agent.html">Agent</a> &amp;agent)</td></tr>
<tr class="memdesc:a2f32d21624feea4591932481611ba09b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the original sender of the message.  <a href="#a2f32d21624feea4591932481611ba09b">More...</a><br /></td></tr>
<tr class="separator:a2f32d21624feea4591932481611ba09b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0ff24fdeb9b3e5381ae009edde4ca85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classocilib_1_1_message.html#ad0ff24fdeb9b3e5381ae009edde4ca85">SetConsumers</a> (std::vector&lt; <a class="el" href="classocilib_1_1_agent.html">Agent</a> &gt; &amp;agents)</td></tr>
<tr class="memdesc:ad0ff24fdeb9b3e5381ae009edde4ca85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the recipient list of a message to enqueue.  <a href="#ad0ff24fdeb9b3e5381ae009edde4ca85">More...</a><br /></td></tr>
<tr class="separator:ad0ff24fdeb9b3e5381ae009edde4ca85"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>AQ message. </p>
<p>This class wraps the OCILIB object handle OCI_Msg and its related methods </p>

<p>Definition at line <a class="el" href="ocilib_8hpp_source.html#l07064">7064</a> of file <a class="el" href="ocilib_8hpp_source.html">ocilib.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a class="anchor" id="aafe1cd604287c11e710e966e92ccaf66"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classocilib_1_1_enum.html">Enum</a>&lt;<a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bc">MessageStateValues</a>&gt; <a class="el" href="classocilib_1_1_message.html#aafe1cd604287c11e710e966e92ccaf66">ocilib::Message::MessageState</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p><a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> state. </p>
<p>Possible values are <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bc" title="Message state enumerated values. ">Message::MessageStateValues</a> </p>

<p>Definition at line <a class="el" href="ocilib_8hpp_source.html#l07094">7094</a> of file <a class="el" href="ocilib_8hpp_source.html">ocilib.hpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="a2aa8565d58cf9c813deabaa0cadff6bc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bc">ocilib::Message::MessageStateValues</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p><a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> state enumerated values. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a2aa8565d58cf9c813deabaa0cadff6bca130668e3c47301fb558ee897c9fd3eeb"></a>Ready&#160;</td><td class="fielddoc">
<p>The message is ready to be processed </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2aa8565d58cf9c813deabaa0cadff6bca8e64b0a1a5f0e78fbd38b5e09b62ba2e"></a>Waiting&#160;</td><td class="fielddoc">
<p>The message delay has not yet completed </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2aa8565d58cf9c813deabaa0cadff6bca0d41191cc47f046e3fa59c64d429125d"></a>Processed&#160;</td><td class="fielddoc">
<p>The message has been processed </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a2aa8565d58cf9c813deabaa0cadff6bca98a8354edf26cc0df160dddfc7505ba4"></a>Expired&#160;</td><td class="fielddoc">
<p>The message has moved to exception queue </p>
</td></tr>
</table>

<p>Definition at line <a class="el" href="ocilib_8hpp_source.html#l07075">7075</a> of file <a class="el" href="ocilib_8hpp_source.html">ocilib.hpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7f050451b47f028fdbaa258a5f95f3bd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ocilib::Message::Message </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classocilib_1_1_type_info.html">TypeInfo</a> &amp;&#160;</td>
          <td class="paramname"><em>typeInfo</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create a message object based on the given payload type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">typeInfo</td><td>- Type info object</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>OCILIB supports 2 type of message payload :<ul>
<li>Oracle types (UDT)</li>
<li>RAW data</li>
</ul>
</dd>
<dd>
Oracle Type AnyData is not supported in the current version of OCILIB</dd>
<dd>
the parameter 'typinf' indicates the type of payload :<ul>
<li>For object payload, retrieve the object type information object from the given type name</li>
<li>For RAW payload, you MUST pass the object type information object from the type name "SYS.RAW" as object type name</li>
</ul>
</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>Newly created <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> handles have NULL payloads. For <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> handling Objects payloads, Get() returns a null <a class="el" href="classocilib_1_1_object.html" title="Object identifying the SQL data type OBJECT. ">Object</a> until an object is assigned to the message.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>When a local <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> object handle is enqueued, it keeps its attributes. If it's enqueued again, another identical message is posted into the queue. To reset a message and empty all its properties, call <a class="el" href="classocilib_1_1_message.html#aacc25763e5a1cd639378cec1a56b62cf" title="Reset all attributes of the message. ">Reset()</a> </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06157">6157</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, <a class="el" href="group___ocilib_c_api_advanced_queuing.html#gae751e4321fe064e44258f9b5e1fc7264">OCI_MsgCreate()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga160370d86fcaf2cd99e72ad6b211090f">OCI_MsgFree()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aacc25763e5a1cd639378cec1a56b62cf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::Reset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reset all attributes of the message. </p>
<dl class="section warning"><dt>Warning</dt><dd><a class="el" href="classocilib_1_1_message.html#aacc25763e5a1cd639378cec1a56b62cf" title="Reset all attributes of the message. ">Reset()</a> clears the message payload and set it to NULL </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06167">6167</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga7d8a7166ab7d6a2ff256a1c954823d86">OCI_MsgReset()</a>.</p>

</div>
</div>
<a class="anchor" id="af9c6e23faa0b786f74c4a19619cdeed7"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TPayloadType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetPayload </td>
          <td>(</td>
          <td class="paramtype">const TPayloadType &amp;&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the object payload of the message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- <a class="el" href="classocilib_1_1_object.html" title="Object identifying the SQL data type OBJECT. ">Object</a> payload </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a898b33f62583d87bc5335feb786fe518"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classocilib_1_1_date.html">Date</a> ocilib::Message::GetEnqueueTime </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>return the time the message was enqueued </p>
<dl class="section note"><dt>Note</dt><dd>Only use this function for message dequeued from queues </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06209">6209</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#gab05662548f7b0059aa786e968ba5f0f4">OCI_MsgGetEnqueueTime()</a>.</p>

</div>
</div>
<a class="anchor" id="a768129bdb46c67893c6772f2211b897a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceocilib.html#a7a8f606db0b3fbbf7d814240c5f96178">Raw</a> ocilib::Message::GetID </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the ID of the message. </p>
<dl class="section note"><dt>Note</dt><dd>The message ID is :<ul>
<li>generated when the message is enqueued in the queue</li>
<li>retrieved when the message is dequeued from the queue </li>
</ul>
</dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06224">6224</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, <a class="el" href="namespaceocilib.html#aef184e5987849b8ddf4e923ee839a964">ocilib::MakeRaw()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga9da2d2951a4a332623d04fdc4fb763c1">OCI_MsgGetID()</a>.</p>

</div>
</div>
<a class="anchor" id="a89e7eddb201a941cfccab99adfd09fc1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ocilib::Message::GetExpiration </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the duration that the message is available for dequeuing. </p>
<dl class="section note"><dt>Note</dt><dd>see <a class="el" href="classocilib_1_1_message.html#a7395ccb71a1ab5149c3b2db3ecbd70b3" title="set the duration that the message is available for dequeuing ">SetExpiration()</a> for more details </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06235">6235</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga3ce87f8f793f92866bcd616a9c397810">OCI_MsgGetExpiration()</a>.</p>

</div>
</div>
<a class="anchor" id="a7395ccb71a1ab5149c3b2db3ecbd70b3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetExpiration </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>set the duration that the message is available for dequeuing </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- duration in seconds</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This parameter is an offset from the delay (see <a class="el" href="classocilib_1_1_message.html#aaf09869e15cfaeb3d78b5988625a0d6c" title="set the number of seconds to delay the enqueued message ">SetEnqueueDelay()</a>) While waiting for expiration, the message state is set to <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca130668e3c47301fb558ee897c9fd3eeb">Message::Ready</a>. If the message is not dequeued before it expires, it will be moved to the exception queue with the state <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca98a8354edf26cc0df160dddfc7505ba4">Message::Expired</a>.</dd>
<dd>
If parameter 'value' is set to -1 (default value), the message will not expire</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>Expiration processing requires the queue monitor to be started. </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06240">6240</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga8ab7327e84c00fcf98f9652fdc2301f1">OCI_MsgSetExpiration()</a>.</p>

</div>
</div>
<a class="anchor" id="a4626b989ab85b0a533e0d5e35424c19c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ocilib::Message::GetEnqueueDelay </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the number of seconds that a message is delayed for dequeuing. </p>
<dl class="section note"><dt>Note</dt><dd>see <a class="el" href="classocilib_1_1_message.html#aaf09869e15cfaeb3d78b5988625a0d6c" title="set the number of seconds to delay the enqueued message ">SetEnqueueDelay()</a> for more details </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06245">6245</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#gac46137ba394ac42b6a170c2bfbd0afb1">OCI_MsgGetEnqueueDelay()</a>.</p>

</div>
</div>
<a class="anchor" id="aaf09869e15cfaeb3d78b5988625a0d6c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetEnqueueDelay </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>set the number of seconds to delay the enqueued message </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- Delay in seconds</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The delay represents the number of seconds after which a message is available for dequeuing. When the message is enqueued, its state is set to <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca8e64b0a1a5f0e78fbd38b5e09b62ba2e">Message::Waiting</a>. When the delay expires, its state is set to <a class="el" href="classocilib_1_1_message.html#a2aa8565d58cf9c813deabaa0cadff6bca130668e3c47301fb558ee897c9fd3eeb">Message::Ready</a>.</dd>
<dd>
If parameter 'value' is set to zero (default value), the message will be immediately available for dequeuing</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>Dequeuing by <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> ID overrides the delay specification.</dd>
<dd>
Delaying processing requires the queue monitor to be started. </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06250">6250</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga144c1628d4f99ee40a4f8609a48ce34f">OCI_MsgSetEnqueueDelay()</a>.</p>

</div>
</div>
<a class="anchor" id="ad1f95b7149935fde1a0b61f6c2cf8789"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ocilib::Message::GetPriority </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the priority of the message. </p>
<dl class="section note"><dt>Note</dt><dd>see <a class="el" href="classocilib_1_1_message.html#a5eec3ebba0c7dda6bed67df88319a7ed" title="Set the priority of the message. ">SetPriority()</a> for more details </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06255">6255</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga9a953e30fbc5a0b2d35f651be83b8af1">OCI_MsgGetPriority()</a>.</p>

</div>
</div>
<a class="anchor" id="a5eec3ebba0c7dda6bed67df88319a7ed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetPriority </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the priority of the message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> priority</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd><ul>
<li>The priority can be any number, including negative numbers.</li>
<li>A smaller number indicates higher priority.</li>
<li>Default value is zero. </li>
</ul>
</dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06260">6260</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga251eb0c599022dddb948224d0db5efef">OCI_MsgSetPriority()</a>.</p>

</div>
</div>
<a class="anchor" id="a8944e40f79daa0ce764fcc21f085d0cb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceocilib.html#a7a8f606db0b3fbbf7d814240c5f96178">Raw</a> ocilib::Message::GetOriginalID </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the original ID of the message in the last queue that generated this message. </p>
<dl class="section warning"><dt>Warning</dt><dd>When a message is propagated from/to different queues, this ID is the one generated for the message in the previous queue. </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06265">6265</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, <a class="el" href="namespaceocilib.html#aef184e5987849b8ddf4e923ee839a964">ocilib::MakeRaw()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#gadb00aaa8840cb36a8d503ec2e097d867">OCI_MsgGetOriginalID()</a>.</p>

</div>
</div>
<a class="anchor" id="aea7d86e961ef365841aa04195f598c01"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetOriginalID </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceocilib.html#a7a8f606db0b3fbbf7d814240c5f96178">Raw</a> &amp;&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the original ID of the message in the last queue that generated this message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> ID</td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>When a message is propagated from/to different queues, this ID is the one generated for the message in the previous queue. </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06276">6276</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga4a06aa6fe64e1fbfead72692415b1240">OCI_MsgSetOriginalID()</a>.</p>

</div>
</div>
<a class="anchor" id="a186e790b939cf124f67af718a3e74f96"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a> ocilib::Message::GetCorrelation </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the correlation identifier of the message. </p>
<dl class="section note"><dt>Note</dt><dd>see <a class="el" href="classocilib_1_1_message.html#a2db8c69adaaa26d48b5cfb9c970e63af" title="Set the correlation identifier of the message. ">SetCorrelation()</a> for more details </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06288">6288</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, <a class="el" href="namespaceocilib.html#a5cd1f7bf7b526707a602632ac2d657f0">ocilib::MakeString()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga54e4c0e91971bce2c6863ac7a01ac133">OCI_MsgGetCorrelation()</a>.</p>

</div>
</div>
<a class="anchor" id="a2db8c69adaaa26d48b5cfb9c970e63af"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetCorrelation </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a> &amp;&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the correlation identifier of the message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> correlation text</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>see <a class="el" href="classocilib_1_1_dequeue.html#a6e8458363e28e238219d7cf75f4b38da" title="set the correlation identifier of the message to be dequeued ">Dequeue::SetCorrelation()</a> for more details </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06293">6293</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga4c7287bb981a9467c4b54a47452babf1">OCI_MsgSetCorrelation()</a>.</p>

</div>
</div>
<a class="anchor" id="a589fa793f09788a83a8a741445fbfb03"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a> ocilib::Message::GetExceptionQueue </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the <a class="el" href="classocilib_1_1_exception.html" title="Exception class handling all OCILIB errors. ">Exception</a> queue name of the message. </p>
<dl class="section warning"><dt>Warning</dt><dd>When calling this function on a message retrieved with <a class="el" href="classocilib_1_1_dequeue.html#a0f742953d21b8fd6d234228d0d91d484" title="Dequeue messages from the given queue. ">Dequeue::Get()</a>, the returned value is empty if the default exception queue associated with the current queue is used (e.g. no user defined specified at enqueue time for the message)</dd></dl>
<dl class="section note"><dt>Note</dt><dd>see <a class="el" href="classocilib_1_1_message.html#af3604dfb0ffe1da8e56c453a8784e7a4" title="Set the name of the queue to which the message is moved to if it cannot be processed successfully...">SetExceptionQueue()</a> for more details </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06298">6298</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, <a class="el" href="namespaceocilib.html#a5cd1f7bf7b526707a602632ac2d657f0">ocilib::MakeString()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga4edb3560ca00f0c7302bd1a1a5aed9ae">OCI_MsgGetExceptionQueue()</a>.</p>

</div>
</div>
<a class="anchor" id="af3604dfb0ffe1da8e56c453a8784e7a4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetExceptionQueue </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceocilib.html#a01daa07e307e429b66fb80f442362237">ostring</a> &amp;&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the name of the queue to which the message is moved to if it cannot be processed successfully. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>- <a class="el" href="classocilib_1_1_exception.html" title="Exception class handling all OCILIB errors. ">Exception</a> queue name</td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>From Oracle Documentation :</dd></dl>
<p>"Messages are moved into exception queues in two cases :</p><ul>
<li>If the number of unsuccessful dequeue attempts has exceeded the attribute 'max_retries' of given queue</li>
<li>if the message has expired.</li>
</ul>
<p>All messages in the exception queue are in the EXPIRED state.</p>
<p>The default is the exception queue associated with the queue table.</p>
<p>If the exception queue specified does not exist at the time of the move the message will be moved to the default exception queue associated with the queue table and a warning will be logged in the alert file.</p>
<p>This attribute must refer to a valid queue name." </p>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06303">6303</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga9e10199e44ba1c0926e3e234fdb50bf4">OCI_MsgSetExceptionQueue()</a>.</p>

</div>
</div>
<a class="anchor" id="aaa88c47fa57264436e8056c92c439074"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classocilib_1_1_agent.html">Agent</a> ocilib::Message::GetSender </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the original sender of the message. </p>
<dl class="section return"><dt>Returns</dt><dd>Valid agent object if set at enqueue time otherwise a null agent object </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06308">6308</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga651ce5a617b8de597868cbd0f85df38e">OCI_MsgGetSender()</a>.</p>

</div>
</div>
<a class="anchor" id="a2f32d21624feea4591932481611ba09b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetSender </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classocilib_1_1_agent.html">Agent</a> &amp;&#160;</td>
          <td class="paramname"><em>agent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the original sender of the message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">agent</td><td>- <a class="el" href="classocilib_1_1_message.html" title="AQ message. ">Message</a> sender </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06313">6313</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#gabd7ccf196a3e3099ea432adda742b508">OCI_MsgSetSender()</a>.</p>

</div>
</div>
<a class="anchor" id="ad0ff24fdeb9b3e5381ae009edde4ca85"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ocilib::Message::SetConsumers </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; <a class="el" href="classocilib_1_1_agent.html">Agent</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>agents</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the recipient list of a message to enqueue. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">agents</td><td>- Recipients list</td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>This function should only be used for queues which allow multiple consumers. The default recipients are the queue subscribers. </dd></dl>

<p>Definition at line <a class="el" href="ocilib__impl_8hpp_source.html#l06318">6318</a> of file <a class="el" href="ocilib__impl_8hpp_source.html">ocilib_impl.hpp</a>.</p>

<p>References <a class="el" href="namespaceocilib.html#ada9a964035fd103d4ec07500f404a658">ocilib::Check()</a>, and <a class="el" href="group___ocilib_c_api_advanced_queuing.html#ga6087b309322a44be3dedc0e2f0a31a5c">OCI_MsgSetConsumers()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespaceocilib.html">ocilib</a></li><li class="navelem"><a class="el" href="classocilib_1_1_message.html">Message</a></li>
    <li class="footer">Generated on Mon Mar 21 2016 22:26:39 for OCILIB (C and C++ Driver for Oracle) by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
  </ul>
</div>
</body>
</html>
